#include "log_tcp.h" int hosts_access(daemon, client) char *daemon; struct from_host *client; int hosts_ctl(daemon, client_name, client_addr, client_user) char *daemon; char *client_host; char *client_addr; char *client_user;
In all cases, the daemon argument should specify a daemon process name (argv[0] value). The client host address should be a valid address, or FROM_UNKNOWN if address lookup failed. The client host name and user name should be empty strings if no information is available, FROM_UNKNOWN if lookup failed, or an actual host or user name.
hosts_access() consults the access control tables described in the hosts_access(5) manual page. If a match is found, an optional shell command is executed and the search terminates. hosts_access() returns zero if access should be denied.
hosts_ctl() is a wrapper around the hosts_access() routine with a perhaps more convenient interface. hosts_ctl() returns zero if access should be denied.
hosts_access() uses the strtok() library function. This may interfere with other code that relies on strtok().
Wietse Venema (wietse@wzv.win.tue.nl) Department of Mathematics and Computing Science Eindhoven University of Technology Den Dolech 2, P.O. Box 513, 5600 MB Eindhoven, The Netherlands